Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement silent update functionality #2131

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

marcustyphoon
Copy link

In theory, this implements a fourth version number field that, when incremented, causes an extension to be updated without notifying the user (unless they are in force update mode).

Incrementing this field on an extension should do nothing if the user has not yet installed this PR. Once the user installs this PR, the increment should be detected as a silent update.

To be very clear: I have not tested this code at all. I literally have not, as of writing this message, even installed it. If someone could figure out how to test it, that would be great.

I would love to have this functionality to be able to put harder lockouts on all of the currently-does-nothing-on-React scripts without spamming the user with what looks like updates. But reading through this code base's internals is actual torture.

@nightpool
Copy link
Member

nightpool commented Aug 18, 2023 via email

@marcustyphoon
Copy link
Author

In short:

run: function() {
	if (XKit.page.react) { return; }

	/* etc */
}

I'm not keen on having to do the Old Sidebar (#2116) thing again, and we have scripts like retags that are intentionally not completely deleted only because they work on legacy (#2088) where that behavior would not be ideal, if we want to continue offering the maximum amount of functionality the codebase can deliver.

In general, the ability to push updates guaranteeing that possibly-broken code won't run without appearing the same way a fix would and incorrectly setting user expectations seems valuable to me. That's only worthwhile if the code that enables that doesn't itself break things, though, which I don't know how to test. My track record for bug-free first commits is pretty bad, after all.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants